cbReverse: TCheckBox;\r
cbWayptMergeDupNames: TCheckBox;\r
cbWayptMergeDistance: TCheckBox;\r
- cobWayptMergeDist: TComboBox;\r
+ cobWayptMergeDistUnit: TComboBox;\r
edWayptMergeDist: TEdit;\r
cbWayptSort: TCheckBox;\r
cbWayptMergeDups: TCheckBox;\r
BitBtn1: TBitBtn;\r
cbWayptRadius: TCheckBox;\r
edWayptRadius: TEdit;\r
- cobWayptRadius: TComboBox;\r
+ cobWayptRadiusUnit: TComboBox;\r
lbWayptRadiusLat: TLabel;\r
lbWayptRadiusLon: TLabel;\r
edWayptRadiusLat: TEdit;\r
cbTrackCourse: TCheckBox;\r
cbTrackSpeed: TCheckBox;\r
gbTransform: TGroupBox;\r
- cobTransform: TComboBox;\r
+ cobTransformType: TComboBox;\r
cbTransform: TCheckBox;\r
cbTransformDelete: TCheckBox;\r
procedure cbTrackTimeClick(Sender: TObject);\r
begin\r
TranslateComponent(SELF);\r
\r
- cobTransform.Items.Clear;\r
- cobTransform.Items.Add(_('Waypoints') + ' -> ' + _('Routes'));\r
- cobTransform.Items.Add(_('Routes') + ' -> ' + _('Waypoints'));\r
- cobTransform.Items.Add(_('Routes') + ' -> ' + _('Tracks'));\r
- cobTransform.Items.Add(_('Tracks') + ' -> ' + _('Routes'));\r
- cobTransform.Items.Add(_('Waypoints') + ' -> ' + _('Tracks'));\r
- cobTransform.Items.Add(_('Tracks') + ' -> ' + _('Waypoints'));\r
- cobTransform.ItemIndex := 0;\r
+ cobTransformType.Items.Clear;\r
+ cobTransformType.Items.Add(_('Waypoints') + ' -> ' + _('Routes'));\r
+ cobTransformType.Items.Add(_('Routes') + ' -> ' + _('Waypoints'));\r
+ cobTransformType.Items.Add(_('Routes') + ' -> ' + _('Tracks'));\r
+ cobTransformType.Items.Add(_('Tracks') + ' -> ' + _('Routes'));\r
+ cobTransformType.Items.Add(_('Waypoints') + ' -> ' + _('Tracks'));\r
+ cobTransformType.Items.Add(_('Tracks') + ' -> ' + _('Waypoints'));\r
+ cobTransformType.ItemIndex := 0;\r
\r
CurrentTime := SysUtils.Now;\r
dtpTrackStartDate.DateTime := Int(CurrentTime);\r
FixPosition(udTimeSeconds, edTrackTimeSeconds, False);\r
FixPosition(lbTimeSeconds, udTimeSeconds, True);\r
\r
- FixPosition(lbWayptRadiusLat, cobWayptRadius, True);\r
+ FixPosition(lbWayptRadiusLat, cobWayptRadiusUnit, True);\r
FixPosition(edWayptRadiusLat, lbWayptRadiusLat, True);\r
FixPosition(lbWayptRadiusLon, edWayptRadiusLat, True);\r
FixPosition(edWayptRadiusLon, lbWayptRadiusLon, True);\r
\r
// will not be translated, fill by hand\r
\r
- cobWayptMergeDist.Items.Add(_('Feet'));\r
- cobWayptMergeDist.Items.Add(_('Meter'));\r
- cobWayptMergeDist.ItemIndex := 0;\r
+ cobWayptMergeDistUnit.Items.Add(_('Feet'));\r
+ cobWayptMergeDistUnit.Items.Add(_('Meter'));\r
+ cobWayptMergeDistUnit.ItemIndex := 0;\r
\r
- cobWayptRadius.Items.Add(_('Miles'));\r
- cobWayptRadius.Items.Add(_('Kilometer'));\r
- cobWayptRadius.ItemIndex := 0;\r
+ cobWayptRadiusUnit.Items.Add(_('Miles'));\r
+ cobWayptRadiusUnit.Items.Add(_('Kilometer'));\r
+ cobWayptRadiusUnit.ItemIndex := 0;\r
\r
dtpTrackStopTime.Time := 1 - (1.0 / (24*60*60));\r
\r
if gbTransform.Enabled and cbTransform.Checked then\r
begin\r
Result := Format('%s -x %s', [Result, 'transform,']);\r
- case cobTransform.ItemIndex of\r
+ case cobTransformType.ItemIndex of\r
0: Result := Result + 'rte=wpt';\r
1: Result := Result + 'wpt=rte';\r
2: Result := Result + 'trk=rte';\r
if cbWayptMergeDistance.Checked then\r
begin\r
Result := Format('%s -x position,distance=%s', [Result, edWayptMergeDist.Text]);\r
- if (cobWayptMergeDist.ItemIndex = 0) then\r
+ if (cobWayptMergeDistUnit.ItemIndex = 0) then\r
Result := Result + 'f' else\r
Result := Result + 'm';\r
end;\r
if cbWayptRadius.Checked then\r
begin\r
Result := Format('%s -x radius,distance=%s', [Result, edWayptRadius.Text]);\r
- if (cobWayptRadius.ItemIndex = 0) then\r
+ if (cobWayptRadiusUnit.ItemIndex = 0) then\r
Result := Result + 'M' else\r
Result := Result + 'K';\r
Result := Format('%s,lat=%s,lon=%s', [Result, edWayptRadiusLat.Text, edWayptRadiusLon.Text]);\r
procedure TfrmFilter.cbWayptMergeDistanceClick(Sender: TObject);\r
begin\r
edWayptMergeDist.Enabled := cbWayptMergeDistance.Checked;\r
- cobWayptMergeDist.Enabled := cbWayptMergeDistance.Checked;\r
+ cobWayptMergeDistUnit.Enabled := cbWayptMergeDistance.Checked;\r
end;\r
\r
procedure TfrmFilter.cbWayptMergeDupsClick(Sender: TObject);\r
procedure TfrmFilter.cbWayptRadiusClick(Sender: TObject);\r
begin\r
edWayptRadius.Enabled := cbWayptRadius.Checked;\r
- cobWayptRadius.Enabled := cbWayptRadius.Checked;\r
+ cobWayptRadiusUnit.Enabled := cbWayptRadius.Checked;\r
edWayptRadiusLat.Enabled := cbWayptRadius.Checked;\r
edWayptRadiusLon.Enabled := cbWayptRadius.Checked;\r
end;\r
if (c is TCheckbox) then\r
r.WriteBool('filter:' + Copy(c.Name, 3, 256), TCheckBox(c).Checked)\r
else if (c is TEdit) then\r
- r.WriteString('filter:' + Copy(c.Name, 3, 256), TEdit(c).Text);\r
+ r.WriteString('filter:' + Copy(c.Name, 3, 256), TEdit(c).Text)\r
+ else if (c is TCombobox) then\r
+ r.WriteString('filter:' + Copy(c.Name, 4, 256), IntToStr(TCombobox(c).ItemIndex));\r
end;\r
finally\r
r.Free;\r
r: TRegistry;\r
s: string;\r
u: TUpDown;\r
- \r
+\r
function ReadString(R: TRegistry; const Key, Def: string): string;\r
begin\r
if R.ValueExists(Key) then\r
u.Position := StrToInt(s)\r
else\r
TEdit(c).Text := s;\r
+ end\r
+ else if (c is TCombobox) then\r
+ begin\r
+ s := ReadString(r, 'filter:' + Copy(c.Name, 4, 256), '0');\r
+ TCombobox(c).ItemIndex := StrToIntDef(s, 0);\r
end;\r
except\r
on E: Exception do ;\r
\r
procedure TfrmFilter.cbTransformClick(Sender: TObject);\r
begin\r
- cobTransform.Enabled := cbTransform.Checked;\r
+ cobTransformType.Enabled := cbTransform.Checked;\r
end;\r
\r
end.\r